set $mod Mod4
set $left h
set $down j
set $up k
set $right l

# 设置默认终端为foot
set $term alacritty
# 设置应用启动菜单
#set $menu rofi -show  drun -theme Arc-Dark -font "JetBrainsMono Nerd Font 18"| xargs swaymsg exec --
set $menu rofi -show  drun

# 按下mod键和回车键打开一个konsole
bindsym $mod+Return exec $term
# 按下mod和c重新加载sway
bindsym $mod+c reload
# 按下mod和q关闭杀死窗口
bindsym $mod+q kill
# 按下mod和d打开应用启动菜单,在其中输入应用名或者应用名的前几个字母就可以打开应用了
bindsym $mod+d exec $menu
# 按下alt ctrl a 进行截图
bindsym Alt+Ctrl+a exec grimshot copy area

# 按下mod和之前设置的left键, 将操作焦点聚焦到左边的窗口, 下面三个类似
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# 按下mod和Shift和之前设置的left键, 将窗口移动到左边, 下面三个类似
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right

# 按下mod和1键, 切换到第一个工作区, 工作区类似于windows下的虚拟桌面, 下面九个类似
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10

# 按下mod shift和1键, 将窗口移动到第一个工作区,下面九个类似
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10

# 按下mod 和b,以后窗口将会在水平方向打开
bindsym $mod+b splith
# 按下mod 和v,以后窗口将会在垂直方向打开
bindsym $mod+v splitv

# stack模式, 不常用
bindsym $mod+s layout stacking
# 标签模式, 每个窗口都占据一个屏幕, 每个窗口都以标签的形式水平排列, 可以理解为像浏览器一样的标签页
bindsym $mod+w layout tabbed
# 平铺模式, 所有窗口都展示出来, 一起铺满整个屏幕, 这也是默认的模式
bindsym $mod+e layout toggle split

# 按下mod键和r来进入resize模式, 下面是resize的操作规则
bindsym $mod+r mode "resize"
mode "resize" {
    # 在resize模式下按left键缩小该窗口10px宽度, 下面几个操作都类似
    bindsym $left resize shrink width 10px
    bindsym $down resize grow height 10px
    bindsym $up resize shrink height 10px
    bindsym $right resize grow width 10px

    # 按下回车键或者esc键都可以从resize模式中退出
    bindsym Return mode "default"
    bindsym Escape mode "default"
}
